﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Entidades;
using Datos;
namespace Logica
{
    public class UsuarioL
    {
        //trae todos los tipos de usuarios para el combobox
        public static List<TipoUsuario> GetAll()
        {
            return TipoUsuarioAD.GetAll();
        }

        //trae todoss los usuarios para el combobox
        public static List<Usuario> GetUAll()
        {
           return UsuarioAD.GetAll();
        }
        //trae todos los dentistas
        public static List<Usuario> GetAllDentistas()
        {
            return UsuarioAD.GetAllDentistas();
        }

        //Restablecer contraseña
        public static bool RestablecerContraseña(string rut)
        {
            int i = 0;
            i = UsuarioAD.RestablecerContraseña(rut);
            if (i == 1)
            {
                return true;
            }
            else
            {
                return false;
            }
           
        }

        //Restablecer contraseña
        public static bool CambiarContraseña(string rut, string pass)
        {
            int i = 0;
            i = UsuarioAD.CambiarContraseña(rut,pass);
            if (i == 1)
            {
                return true;
            }
            else
            {
                return false;
            }

        }

        
        //modificar usuario

        public static bool ModificarUsuario(Usuario usuario)
        {

            int i = 0;
            i = UsuarioAD.ModificarUsuario(usuario);
            if (i == 1)
            {

                return true;
            }
            else
            {
                return false;
            }

        }
        //busca paciente por rut
        public static Usuario GetByRut(string rut)
        {
            return UsuarioAD.GetByRut(rut);
        }

        //Calula digito verificador
        public static string dv(int rut)
        {
            int Digito;
            int Contador;
            int Multiplo;
            int Acumulador;
            string RutDigito;

            Contador = 2;
            Acumulador = 0;

            while (rut != 0)
            {
                Multiplo = (rut % 10) * Contador;
                Acumulador = Acumulador + Multiplo;
                rut = rut / 10;
                Contador = Contador + 1;
                if (Contador == 8)
                {
                    Contador = 2;
                }
            }


            Digito = 11 - (Acumulador % 11);
            RutDigito = Digito.ToString().Trim();
            if (Digito == 10)
            {
                RutDigito = "K";
            }
            if (Digito == 11)
            {
                RutDigito = "0";
            }
            return (RutDigito);
        }

        //insertar usuario
        public static bool NuevoUsuario(Usuario usuario)
        {
            int i = 0;
            i = UsuarioAD.NuevoUsuario(usuario);
            if (i == 1)
            {
                return true;
            }
            else
            {
                return false;
            }
        }

       //bloquea usuario
        public static bool BloqueaUsuario(Usuario usuario)
        {
            int i = 0;
            i = UsuarioAD.BloqueaUsuario(usuario);
            if (i == 1)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        
      
    }
}
